This application claims the benefit of Korean Patent Application No. 2002-19967 filed on Apr. 12, 2002, in the Korean Intellectual Property Office, the disclosure of which is incorporated herein by reference.
1. Field of the Invention
The present invention relates to a circuit which reliably recovers a synchronization code in an optical disc system and a method thereof.
2. Description of the Related Art
Optical discs are widely used in the field of computers and home appliances as data storage media. During a fast optical disc playing operation, data errors are caused by technical restrictions, such as a fixed wavelength of a laser beam and a wobbling of a disc, during a disc rotation. Accordingly, a strong synchronization code for a data error must be detected to accurately playback an optical disc. Generally, a synchronization code is detected, protected and recovered using a window that is generated at synchronization intervals.
FIG. 1 shows a conventional synchronization code recovery circuit. The synchronization code recovery circuit includes a synchronization detector 1 which detects a synchronization code from an incoming bitstream, a window generator 2 which generates a window signal, a synchronization recoverer 3 which recovers the synchronization code, and a serial-to-parallel (S/P) converter 4 which converts serial data into parallel data. In this structure, the conventional synchronization code recovery circuit recovers a damaged synchronization code.
FIGS. 2A through 2D are timing diagrams of the synchronization code recovery circuit of FIG. 1. As shown in FIG. 2C, with reference to FIG. 1, the synchronization detector 1 detects a synchronization code from an incoming serial bitstream during a window, which is generated by the window generator 2. The incoming serial bitstream comprises synchronization codes and data which alternate one after another at every n channel bits. Where an original sync code shown in FIG. 2A is damaged, and a synchronization code is not detected by the synchronization detector 1 at a certain time as shown in FIG. 2B, the synchronization recoverer 3 recovers the synchronization code as shown in FIG. 2D. At this time, the synchronization code is recovered at a location exactly n channel bits apart from a location of a previous synchronization code.
Accordingly, the conventional synchronization code recovery circuit recovers a synchronization code at a fixed location. As such, where a channel bit does not match with a corresponding bit clock, the synchronization code is recovered to a wrong place. For example, a counter installed in the synchronization recoverer 3 may wrongly count by at least one channel bit. That is, where the counter in the synchronization recoverer 3 mistakes (nxe2x88x92k) or (n+k) channel bits for n channel bits, a wrongly recovered synchronization code affects the following data. Here, k denotes a positive integer.
Therefore, where a synchronization code is not detected within a fixed window period, the conventional synchronization code recovery circuit recovers the synchronization code to a location n channel bits apart from a location of a previous synchronization code. Hence, where n channel bits that are synchronized with bit clocks are not exactly counted, the synchronization code may not be recovered to its original location.
Accordingly, it is an object of the present invention to provide a circuit and a method of recovering a synchronization code to an accurate location.
Another object of the present invention is to provide a circuit and a method of recovering a synchronization code to an optimal location by comparing a plurality of synchronization code recovery candidates with an original synchronization code pattern.
Still another object of the present invention is to provide a circuit and a method of recovering a synchronization code to an optimal location by performing an error correction operation on a plurality of synchronization code recovery candidates.
Additional objects and advantages of the invention will be set forth in part in the description which follows and, in part, will be obvious from the description, or may be learned by practice of the invention.
To achieve the above and other objects of the present invention, there is provided a synchronization code recovery circuit comprising a synchronization detector, a next synchronization location data generator, and a synchronization recoverer. The synchronization detector detects a synchronization code from an incoming bitstream during a window equal to or longer than a synchronization period. The next synchronization location data generator obtains and compares a plurality of synchronization code recovery candidate patterns with an original synchronization pattern of the incoming bitstream in response to the synchronization code not being detected by the synchronization detector, and generates location data to produce an optimal synchronization pattern according to a result of the comparison. The synchronization recoverer recovers the synchronization code to a location corresponding to the location data.
To achieve the above and other objects of the present invention, there is also provided a synchronization code recovery circuit comprising a synchronization detector, a generator, and a synchronization recoverer. The synchronization detector detects a synchronization code from an incoming bitstream during a window equal to or longer than a synchronization period. The generator obtains and error-corrects a plurality of synchronization code recovery candidate patterns in response to the synchronization code not being detected by the synchronization detector, and generates location data to produce an optimal synchronization pattern according to a result of the error-correction. The synchronization recoverer recovers the synchronization code to a location corresponding to the location data.
To achieve the above and other objects of the present invention, there is provided a method of recovering a damaged synchronization code on an incoming bitstream. The method comprises detecting a synchronization code from the incoming bitstream during a window equal to or longer than a synchronization period, comparing a plurality of synchronization code recovery candidate patterns with an original synchronization pattern of the incoming bitstream in response to the synchronization code not being detected and generating location data to produce an optimal synchronization pattern according to the comparison, and recovering the synchronization code to a location corresponding to the location data.
To achieve the above and other objects of the present invention, there is provided another method of recovering a damaged synchronization code on an incoming bitstream. The method comprises detecting a synchronization code from the incoming bitstream during a window equal to or longer than a synchronization period, error-correcting a plurality of synchronization code recovery candidate patterns in response to the synchronization code not being detected and generating location data to produce an optimal synchronization pattern according to the error-correction, and recovering the synchronization code to a location corresponding to the location data.